package com.joker.demo.admin.domain.vo;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 执行器运行情况概览VO
 *
 * @author : feixiang.li
 * @since : 2025-01-27 10:00
 */
@Data
public class ExecutorRuntimeOverviewVO implements Serializable {

    /**
     * 总执行器数量
     */
    private Integer totalExecutors;

    /**
     * 在线执行器数量
     */
    private Integer onlineExecutors;

    /**
     * 离线执行器数量
     */
    private Integer offlineExecutors;

    /**
     * 健康执行器数量
     */
    private Integer healthyExecutors;

    /**
     * 警告执行器数量
     */
    private Integer warningExecutors;

    /**
     * 异常执行器数量
     */
    private Integer errorExecutors;

    /**
     * 总活跃线程数
     */
    private Integer totalActiveThreads;

    /**
     * 总运行任务数
     */
    private Integer totalRunningTasks;

    /**
     * 平均内存使用率(%)
     */
    private BigDecimal averageMemoryUsage;

    /**
     * 平均队列使用率(%)
     */
    private BigDecimal averageQueueUsage;

    /**
     * 执行器状态分布
     */
    private List<ExecutorStatusStatistics> statusDistribution;

    /**
     * 应用分布
     */
    private List<AppStatisticsVO> appDistribution;

    /**
     * 最近活跃的执行器列表
     */
    private List<ExecutorRuntimeVO> recentActiveExecutors;
}
